package demo1218.am;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;

/*
1.boolean containsAll(Collection<?> c);
 如果此 collection 包含指定 collection 中的所有元素，则返回 true。

2.boolean removeAll(Collection<?> c);
移除此 collection 中那些也包含在指定 collection 中的所有元素（可选操作）。
此调用返回后，collection 中将不包含任何与指定 collection 相同的元素。
返回：如果此 collection 由于调用而发生更改，则返回 true.

3.boolean retainAll(Collection<?> c);
仅保留此 collection 中那些也包含在指定 collection 的元素（可选操作）。
换句话说，移除此 collection 中未包含在指定 collection 中的所有元素。
返回：如果此 collection 由于调用而发生更改，则返回 true

4.Object[] toArray();
返回包含此 collection 中所有元素的数组
。如果 collection 对其迭代器返回的元素顺序做出了某些保证，
那么此方法必须以相同的顺序返回这些元素。
 */
public class Demo_02 {
    public static void main(String[] args) {
        Collection<String> col = new ArrayList<>();
        col.add("hello");
        col.add("world");
        col.add("12345");
        Object[] obj = col.toArray();
        System.out.println(Arrays.toString(obj));
    }

    public static void demo01(Collection<String> col) {
        Collection<String> col1 = new ArrayList<>();
        col1.add("hello");
        col1.add("123");
//        boolean b = col.removeAll(col1);
        boolean b = col.retainAll(col1);
        System.out.println(b);//true
        System.out.println(col);//[hello]
        System.out.println(col1);//[hello ,123]
    }
}
